﻿//===============================================================================
// Microsoft patterns & practices Enterprise Library Contribution
// Query Application Block
//===============================================================================

namespace EntLibContrib.Query.Commands
{
	/// <summary>
	/// Simple class to hold the components of a WCF service command
	/// </summary>
	/// <remarks>
	/// Even if the service itself is an older web service, rather than a WCF service,
	/// the client proxy may still be generated as a Wcf service in which case you need to
	/// use this command.
	/// </remarks>
	public class WcfServiceCommand : ServiceCommand
	{
		#region Construction
		/// <summary>
		/// Initializes a new instance of the <see cref="WcfServiceCommand"/> class.
		/// </summary>
		public WcfServiceCommand()
		{
		}

        /// <summary>
        /// Initializes a new instance of the <see cref="WcfServiceCommand"/> class.
        /// </summary>
        /// <param name="endpoint">The end point.</param>
        /// <param name="address">The address.</param>
        /// <param name="service">The service.</param>
        /// <param name="method">The method.</param>
        /// <param name="parameterSet">The parameter set.</param>
        public WcfServiceCommand(string endpoint, string address, string service, string method, IParameterSet parameterSet)
            : this(endpoint, address, service, method, parameterSet.Parameters)
        {
        }

		/// <summary>
		/// Initializes a new instance of the <see cref="WcfServiceCommand"/> class.
		/// </summary>
		/// <param name="endpoint">The end point.</param>
		/// <param name="address">The address.</param>
		/// <param name="service">The service.</param>
		/// <param name="method">The method.</param>
		/// <param name="parameters">The parameters.</param>
		public WcfServiceCommand(string endpoint, string address, string service, string method, ParameterDictionary parameters)
			: base(endpoint, address, service, method, parameters)
		{
		}
		#endregion
	}
}
